<?xml version="1.0"?>
<component name="org.nuxeo.ecm.user.registration.lifecycle.contrib.override">

  <require>org.nuxeo.ecm.user.registration.lifecycle.contrib</require>

  <extension point="lifecycle" target="org.nuxeo.ecm.core.lifecycle.LifeCycleService">

    <lifecycle defaultInitial="created" name="registrationRequest">
      <transitions>
        <transition destinationState="accepted" name="accept">
          <description>Accept the registration request</description>
        </transition>
        <transition destinationState="rejected" name="reject">
          <description>Reject the registration request</description>
        </transition>
        <transition destinationState="validated" name="validate">
          <description>Validate the registration request</description>
        </transition>
        <transition destinationState="processed" name="process">
          <description>Process the registration request</description>
        </transition>
      </transitions>
      <states>
        <state description="Default state" initial="true" name="created">
          <transitions>
            <transition>accept</transition>
            <transition>reject</transition>
          </transitions>
        </state>
        <state description="Registration has been accepted" name="accepted">
          <transitions>
            <transition>validate</transition>
          </transitions>
        </state>
        <state description="Registration has been rejected" name="rejected">
          <transitions/>
        </state>
        <state description="Registration has been validated" name="validated">
          <transitions>
            <transition>process</transition>
          </transitions>
        </state>
        <state description="Registration request has been processed" name="processed">
          <transitions/>
        </state>
      </states>
    </lifecycle>
  </extension>

</component>
